#include <iostream>
#include "bitset.h"

int main()
{
    // const unsigned int num = -1;
    // std::cout << num << std::endl;
    // mian_yang::bitset<num> bt;
    // bt.set(1);
    // bt.set(12);
    // bt.set(13);
    // bt.set(14);
    // bt.set(15);
    // bt.set(16);

    // for (int i = 0; i < 20; i++)
    // {
    //     if (bt.test(i)) std::cout << bt.test(i) << ":" << i << std::endl;
    // }

    const unsigned int num = 1024 * 1024;
    mian_yang::dbitset<num> bt;
    srand(time(nullptr));

    for (int i = 0; i < 20000; i++)
    {
        // int k = rand() % (1024 * 1024);
        int k = i;
        bt.set(k);
    }
    bt.set(1);
    bt.set(15);
    bt.set(14);
    bt.set(13);
    bt.set(12);
    bt.set(1);
    for (int i = 0; i < 1024 * 1024; i++)
    {
        if (bt.test(i)) std::cout << i << " "; 
    }

    return 0;
}